package model

import java.awt.Color
import org.uqbar.arena.layout.HorizontalLayout
import org.uqbar.arena.layout.VerticalLayout
import org.uqbar.arena.widgets.Button
import org.uqbar.arena.widgets.Panel
import org.uqbar.arena.windows.WindowOwner
import templates.AgregarNuevo
import templates.MyOwnSimpleWindow
import modelApp.ExpedienteAppModel
import templates.EdicionAtributos

class NuevoVillanoView extends MyOwnSimpleWindow<ExpedienteAppModel> {
	
	@Property val AgregarNuevo template = new AgregarNuevo
	@Property val EdicionAtributos templateEdicion = new EdicionAtributos
	
	new(WindowOwner owner, ExpedienteAppModel expediente) {
		super(owner, expediente)
		this.modelObject.villanoSeleccionado = new Villano()
	}
	
	override createContents(Panel mainPanel) {
		setTitle("Expedientes - Nuevo Villano")
		mainPanel.setLayout(new VerticalLayout())
		
		val panel1 = new Panel(mainPanel).setLayout(new HorizontalLayout())
		this.template.labelAndBox(panel1, "Nombre: ", "villanoSeleccionado.nombre")
		
		this.template.labelAndSelector(panel1, "Sexo: ", "villanoSeleccionado.sexosPosibles" , "villanoSeleccionado.sexo")
		
		this.template.caracteristicaBundle(mainPanel, "Señas Particulares ",
										 "villanoSeleccionado.senhas" , [| new EditarSenhasParticularesView(this, this.modelObject.villanoSeleccionado).open])
		
		this.template.caracteristicaBundle(mainPanel, "Hobbies ",
					"villanoSeleccionado.hobbies",[| new EditarHobbiesView(this, this.modelObject.villanoSeleccionado).open])	
		
		
		new Button(mainPanel) => [
				setCaption("Aceptar")
				setBackground(Color :: LIGHT_GRAY)
				onClick([| 	this.modelObject.agregarVillano() /* ----> */ close])
			]
		}
}